#ifndef GOSTELLEYICI_H
#define GOSTELLEYICI_H

#include "Gosterici.h"
//#include "Iletici.h"
#include "Pozisyon.h"

/** 
 * \class Gorselleyici
 * \ingroup Gosterim
 * \brief Iletisim ve Gosterim bilesenleri arasindaki baglantiyi kuran bilesendir. 
 *		  Arayuzdeki komutlari gerekli merciilere ulastirmakla yukumludur.
 * \author Mehmet Yigitsoy
 * \date $Date: 2013/01/03 11:23:00 $
 */
class Gorselleyici
{
public:
	/**
	 * \brief 
	 * \returns 
	 **/
	Gorselleyici();
	/**
	 * \brief 
	 * \returns 
	 **/
	~Gorselleyici();
	/**
	 * \brief 
	 * \returns const Gosterici *
	 **/
	const Gosterici * getGosterici() const { return m_gosterici; }
	/**
	 * \brief 
	 * \param val
	 * \returns void
	 **/
	void setGosterici(Gosterici * val) { m_gosterici = val; }
	///**
	// * \brief 
	// * \returns const Iletici *
	// **/
	//const Iletici * getIletici() const { return m_iletici; }
	///**
	// * \brief 
	// * \param val
	// * \returns void
	// **/
	//void setIletici(const Iletici * val) { m_iletici = val; }
	/**
	 * \brief 
	 * \returns void
	 **/
	/**
	 * \brief 
	 * \returns void
	 **/
	void baslat();
	/**
	 * \brief 
	 * \returns void
	 **/
	void beklet();
	/**
	 * \brief 
	 * \returns void
	 **/
	void durdur();


	/**
	 * \brief Test metodu. TODO: Sil
	 * \param id
	 * \param x
	 * \param y
	 * \param z
	 * \returns void
	 **/
	void pozisyonEkle( int id, double x, double y, double z );
protected:
	
private:
	Gosterici				*m_gosterici;
	//const Iletici			*m_iletici;
	
};
#endif // GORSELLEYICI_H